File Yours Mine SectorDiff SizeDiffF<00>000 17 17 +3F<00>001 18 21 3 0F<00>002 91 94 3 +2F<00>003 280 285 5 0F<00>004 373 378 5 0F<00>005 399 404 5 0F<00>006 408 413 5 0F<00>007 437 442 5 -1F<00>008 465 469 4 +3F<00>009 495 502 7 +1F<00>010 502 510 8 0F<00>011 516 524 8 +2F<00>012 542 552 10 0F<00>013 549 559 10 +1F<00>014 578 589 11 0F<00>015 592 603 11 0F<00>016 606 617 11 +2F<00>017 635 648 13 0F<00>018 636 649 13 0F<00>019 654 667 13 0F<00>020 671 684 13 ???
+-------------+|mesh0 | mesh1||------+------||mesh2 | mesh3|+-------------+
(1 byte) 0x04(1 byte) Unknown.(1 byte) Unknown.(1 byte) Unknown.(4 bytes) Pointer to start of next block or texture group.(4 bytes) Pointer to start of first mesh.(4 bytes) Pointer to start of second mesh.(4 bytes) Pointer to start of third mesh.(4 bytes) Pointer to start of fourth mesh.Start of first mesh: (1 byte) Number of vertices. (1 byte) Unknown. (2 bytes) Number of triangles. (4 bytes) Pointer to vertex data. (4 bytes) Pointer to triangle data. (20 bytes) Unknown. (4 bytes) Unknown. Start of vertex data for first mesh: (2 bytes) Coordinate x. (Admits negative numbers.) (2 bytes) Coordinate y. (Admits negative numbers.) (2 bytes) Coordinate z. (Admits negative numbers.) (2 bytes) Unknown. ... (Repeat for each vertex.) Start of triangle data for first mesh: (1 byte) Index of first vertex. (1 byte) Index of second vertex. (1 byte) Index of third vertex. (1 byte) Unknown. (1 byte) Coordinate u in texture for the first vertex. (1 byte) Coordinate v in texture for the first vertex. (2 bytes) Unknown. (1 byte) Coordinate u in texture for the second vertex. (1 byte) Coordinate v in texture for the second vertex. (2 bytes) Unknown. (1 byte) Coordinate u in texture for the third vertex. (1 byte) Coordinate v in texture for the third vertex. (2 bytes) Unknown. ... (Repeat for each triangle.)Start of second mesh: ... (Idem first mesh.)Start of third mesh: ... (Idem first mesh.)Start of fourth mesh: ... (Idem first mesh.)Zero padded up to end of sector.